home *** CD-ROM | disk | FTP | other *** search
- import java.awt.Color;
- import java.io.DataInputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import java.net.URL;
-
- public final class ColadaDoc implements Runnable {
- protected ColObjIntr m_drwLstHead;
- protected ColObjIntr m_drwLstTail;
- public ColObjIntr m_urlLstHead;
- public ColObjIntr m_urlLstTail;
- public ColGrph m_colGraphicObj;
- public DataInputStream m_hostStream;
- private byte[] m_tag = new byte[32];
- private byte m_version;
- private int m_fileSize;
- private byte m_reserved1;
- private int m_numElms;
- private int m_reserved3;
-
- public ColObjIntr ReadNextObj(DataInputStream var1) throws IOException {
- short var3 = var1.readByte();
- int var4 = var1.readInt();
- int var5 = var1.readInt();
- Object var2;
- switch (var3) {
- case 1:
- case 2:
- var2 = (ColObjIntr)(new ColPoly(var1, var3, var4, this.m_colGraphicObj, this.m_colGraphicObj.m_graphicsBuffer));
- break;
- case 3:
- case 4:
- var2 = (ColObjIntr)(new ColBez(var1, var3, var4, this.m_colGraphicObj, this.m_colGraphicObj.m_graphicsBuffer));
- break;
- case 5:
- var2 = (ColObjIntr)(new ColTxt(var1, var4, this.m_colGraphicObj, this.m_colGraphicObj.m_graphicsBuffer));
- break;
- case 6:
- var2 = (ColObjIntr)(new ColImg(var1, this.m_colGraphicObj, this.m_colGraphicObj.m_graphicsBuffer));
- break;
- case 7:
- var2 = new ColUrl(var1, this.m_colGraphicObj, this.m_colGraphicObj.m_graphicsBuffer);
- break;
- case 11:
- var2 = (ColObjIntr)(new ColDisjnt(var1, var3, var4, this.m_colGraphicObj, this.m_colGraphicObj.m_graphicsBuffer));
- break;
- case 12:
- var2 = (ColObjIntr)(new ColTxtFnt(var1, var4, this.m_colGraphicObj, this.m_colGraphicObj.m_graphicsBuffer));
- break;
- case 13:
- var2 = (ColObjIntr)(new ColButton(var1, var4, this.m_colGraphicObj, this.m_colGraphicObj.m_graphicsBuffer));
- break;
- case 14:
- var2 = (ColObjIntr)(new ColMedia(var1, var4, this.m_colGraphicObj, this.m_colGraphicObj.m_graphicsBuffer));
- ++this.m_colGraphicObj.m_appComp.numMediaObjs;
- break;
- case 15:
- var2 = (ColObjIntr)(new ColLayer());
- ++this.m_colGraphicObj.m_appComp.numlayers;
- this.m_colGraphicObj.m_appComp.layerFlags = this.m_colGraphicObj.m_appComp.layerFlags + "V";
- break;
- case 16:
- var2 = (ColObjIntr)(new ColSnd(var1, this.m_colGraphicObj, this.m_colGraphicObj.m_graphicsBuffer));
- break;
- case 255:
- default:
- var2 = null;
- this.m_colGraphicObj.m_appComp.m_colUpdtEnable = true;
- this.finish();
- }
-
- do {
- while(this.m_colGraphicObj.m_appComp.m_stopCalled) {
- }
- } while(this.m_colGraphicObj.m_appComp.m_breakDrawAll);
-
- return (ColObjIntr)var2;
- }
-
- public void finalize() {
- try {
- ColObjIntr var1 = this.m_drwLstHead;
-
- Object var2;
- ColObjIntr var3;
- for(var3 = this.m_urlLstHead; var1 != null; var2 = null) {
- var1 = var1.getNext();
- }
-
- while(var3 != null) {
- var3 = var3.getNext();
- Object var4 = null;
- }
-
- this.m_drwLstHead = null;
- this.m_drwLstTail = null;
- this.m_urlLstHead = null;
- this.m_urlLstTail = null;
- this.m_hostStream = null;
- this.m_colGraphicObj.finalize();
- this.m_colGraphicObj = null;
- } catch (Exception var5) {
- }
- }
-
- public void run() {
- Object var1 = null;
-
- try {
- this.m_hostStream.readFully(this.m_tag);
- this.m_version = this.m_hostStream.readByte();
- float var10000 = (float)this.m_hostStream.readShort() + (float)this.m_hostStream.readShort() / 65536.0F;
- var10000 = (float)this.m_hostStream.readShort() + (float)this.m_hostStream.readShort() / 65536.0F;
- this.m_fileSize = this.m_hostStream.readInt();
- } catch (Exception var11) {
- this.m_colGraphicObj.m_appComp.showStatus("Error: " + "(run 1815 Coldoc " + ((Throwable)var11).getMessage() + " occured while Downloading.");
- }
-
- int var2 = 255;
- int var3 = 255;
- int var4 = 255;
-
- try {
- var2 = this.m_hostStream.readUnsignedByte();
- var3 = this.m_hostStream.readUnsignedByte();
- var4 = this.m_hostStream.readUnsignedByte();
- } catch (Exception var10) {
- this.m_colGraphicObj.m_appComp.showStatus("Error: " + "(run 1833 Coldoc " + ((Throwable)var10).getMessage() + " occured while Downloading.");
- }
-
- this.m_colGraphicObj.m_bkGrndClr = new Color(var2, var3, var4);
- this.m_colGraphicObj.m_appComp.repaint();
-
- try {
- this.m_reserved1 = this.m_hostStream.readByte();
- this.m_numElms = this.m_hostStream.readInt();
- this.m_reserved3 = this.m_hostStream.readInt();
- } catch (Exception var9) {
- this.m_colGraphicObj.m_appComp.showStatus("Error: " + "(run 1848 Coldoc " + ((Throwable)var9).getMessage() + " occured while Downloading.");
- }
-
- int var5 = 0;
-
- do {
- var12 = null;
-
- try {
- this.m_colGraphicObj.m_appComp.showStatus("Reading object " + var5 + " of " + this.m_numElms);
- var12 = this.ReadNextObj(this.m_hostStream);
- Thread.currentThread();
- Thread.yield();
- } catch (Exception var8) {
- this.m_colGraphicObj.m_appComp.showStatus("Error: " + "(run 1864 Coldoc " + ((Throwable)var8).getMessage() + " occured while Downloading.");
- }
-
- ++var5;
- if (var12 != null) {
- if (var12.getType() == 7) {
- var12.setNext((ColObjIntr)null);
- if (this.m_urlLstHead != null) {
- var12.setPrev(this.m_urlLstTail);
- this.m_urlLstTail.setNext(var12);
- this.m_urlLstTail = var12;
- } else {
- this.m_urlLstHead = var12;
- this.m_urlLstTail = var12;
- var12.setPrev((ColObjIntr)null);
- }
- } else {
- this.m_colGraphicObj.m_appComp.m_urlLstDone = true;
- var12.setNext((ColObjIntr)null);
- if (this.m_drwLstHead != null) {
- var12.setPrev(this.m_drwLstTail);
- this.m_drwLstTail.setNext(var12);
- this.m_drwLstTail = var12;
- } else {
- this.m_drwLstHead = var12;
- this.m_colGraphicObj.m_curObj = this.m_drwLstHead;
- this.m_drwLstTail = var12;
- var12.setPrev((ColObjIntr)null);
- }
- }
-
- if (this.m_colGraphicObj.m_appComp.firstDrawDone) {
- var12.draw(this.m_colGraphicObj.m_graphicsBuffer);
- }
- }
- } while(var12 != null);
-
- }
-
- public void finish() throws IOException {
- this.m_colGraphicObj.m_appComp.m_colDocDone = true;
- this.m_colGraphicObj.m_curURL = (ColUrl)this.m_urlLstHead;
- this.m_colGraphicObj.m_curObj = this.m_drwLstHead;
- this.m_colGraphicObj.m_appComp.showStatus("Done");
- this.m_hostStream.close();
- }
-
- ColadaDoc(Colada var1, URL var2) {
- this.m_colGraphicObj = new ColGrph(var1);
-
- try {
- InputStream var3 = var2.openStream();
- this.m_hostStream = new DataInputStream(var3);
- } catch (Exception var5) {
- this.m_colGraphicObj.m_appComp.showStatus("Error: " + "Opening Stream " + ((Throwable)var5).getMessage() + " occured while Downloading.");
- }
- }
- }
-